home *** CD-ROM | disk | FTP | other *** search
/ 600 Games / 600games.iso / Corrida / dragracer.swf / scripts / %3Cdefault package%3E / FListBoxSymbol.as < prev    next >
Encoding:
Text File  |  2005-10-06  |  5.3 KB  |  179 lines

  1. function FListBoxClass()
  2. {
  3.    var _loc1_ = this;
  4.    _loc1_.itemSymbol = "FListItemSymbol";
  5.    _loc1_.init();
  6.    _loc1_.permaScrollBar = true;
  7.    var _loc2_ = 0;
  8.    while(_loc2_ < _loc1_.labels.length)
  9.    {
  10.       _loc1_.addItem(_loc1_.labels[_loc2_],_loc1_.data[_loc2_]);
  11.       _loc2_ = _loc2_ + 1;
  12.    }
  13.    _loc1_.boundingBox_mc.gotoAndStop(1);
  14.    _loc1_.width = _loc1_._width;
  15.    _loc1_.height = _loc1_._height;
  16.    _loc1_._yscale = _loc1_._xscale = 100;
  17.    _loc1_.setSize(_loc1_.width,_loc1_.height);
  18.    if(_loc1_.changeHandler.length > 0)
  19.    {
  20.       _loc1_.setChangeHandler(_loc1_.changeHandler);
  21.    }
  22. }
  23. FListBoxClass.prototype = new FScrollSelectListClass();
  24. Object.registerClass("FListBoxSymbol",FListBoxClass);
  25. FListBoxClass.prototype.getSelectedIndices = function()
  26. {
  27.    var _loc1_ = this;
  28.    var _loc2_ = new Array();
  29.    for(var _loc3_ in _loc1_.selected)
  30.    {
  31.       _loc2_.push(_loc1_.selected[_loc3_].sIndex);
  32.    }
  33.    if(_loc2_.length <= 0)
  34.    {
  35.       return undefined;
  36.    }
  37.    return _loc2_;
  38. };
  39. FListBoxClass.prototype.getSelectedItems = function()
  40. {
  41.    var _loc2_ = this.getSelectedIndices();
  42.    var _loc3_ = new Array();
  43.    var _loc1_ = 0;
  44.    while(_loc1_ < _loc2_.length)
  45.    {
  46.       _loc3_.push(this.getItemAt(_loc2_[_loc1_]));
  47.       _loc1_ = _loc1_ + 1;
  48.    }
  49.    if(_loc3_.length <= 0)
  50.    {
  51.       return undefined;
  52.    }
  53.    return _loc3_;
  54. };
  55. FListBoxClass.prototype.getSelectMultiple = function()
  56. {
  57.    return this.selectMultiple;
  58. };
  59. FListBoxClass.prototype.getRowCount = function()
  60. {
  61.    return this.numDisplayed;
  62. };
  63. FListBoxClass.prototype.setSelectedIndices = function(indexArray)
  64. {
  65.    var _loc2_ = indexArray;
  66.    var _loc3_ = this;
  67.    _loc3_.clearSelected();
  68.    var _loc1_ = 0;
  69.    while(_loc1_ < _loc2_.length)
  70.    {
  71.       _loc3_.selectItem(_loc2_[_loc1_],true);
  72.       _loc1_ = _loc1_ + 1;
  73.    }
  74.    _loc3_.updateControl();
  75. };
  76. FListBoxClass.prototype.setSelectMultiple = function(flag)
  77. {
  78.    this.selectMultiple = flag;
  79. };
  80. FListBoxClass.prototype.setRowCount = function(count)
  81. {
  82.    var _loc2_ = this;
  83.    var _loc1_ = count * (_loc2_.itmHgt - 2) + 2;
  84.    _loc2_.setSize(_loc2_.width,_loc1_);
  85. };
  86. FListBoxClass.prototype.setWidth = function(wdt)
  87. {
  88.    this.setSize(wdt,this.height);
  89. };
  90. FListBoxClass.prototype.setSize = function(w, h)
  91. {
  92.    var _loc1_ = this;
  93.    var _loc2_ = h;
  94.    var _loc3_ = w;
  95.    if(_loc1_.enable)
  96.    {
  97.       _loc3_ = Math.max(_loc3_,20);
  98.       _loc2_ = Math.max(_loc2_,40);
  99.       _loc1_.container_mc.removeMovieClip();
  100.       _loc1_.container_mc = _loc1_.createEmptyMovieClip("container",3);
  101.       _loc1_.measureItmHgt();
  102.       _loc1_.numDisplayed = Math.floor(_loc2_ / (_loc1_.itmHgt - 2));
  103.       _loc1_.height = _loc1_.numDisplayed * (_loc1_.itmHgt - 2) + 2;
  104.       super.setSize(_loc3_,_loc1_.height);
  105.    }
  106. };
  107. FListBoxClass.prototype.removeItemAt = function(index)
  108. {
  109.    this.selectHolder = this.getSelectedIndices();
  110.    return super.removeItemAt(index);
  111. };
  112. FListBoxClass.prototype.selectionHandler = function(itemNum)
  113. {
  114.    var _loc1_ = this;
  115.    if(_loc1_.clickFilter)
  116.    {
  117.       var _loc3_ = _loc1_.topDisplayed + itemNum;
  118.       if(_loc1_.getItemAt(_loc3_) == undefined)
  119.       {
  120.          _loc1_.changeFlag = false;
  121.       }
  122.       else
  123.       {
  124.          _loc1_.changeFlag = true;
  125.          if(!_loc1_.selectMultiple && !Key.isDown(17) || !Key.isDown(16) && !Key.isDown(17))
  126.          {
  127.             _loc1_.clearSelected();
  128.             _loc1_.selectItem(_loc3_,true);
  129.             _loc1_.lastSelected = _loc3_;
  130.             _loc1_.container_mc["fListItem" + itemNum + "_mc"].drawItem(_loc1_.getItemAt(_loc3_),_loc1_.isSelected(_loc3_));
  131.          }
  132.          else if(Key.isDown(16) && _loc1_.selectMultiple)
  133.          {
  134.             if(_loc1_.lastSelected == -1)
  135.             {
  136.                _loc1_.lastSelected = _loc3_;
  137.             }
  138.             var incr = _loc1_.lastSelected >= _loc3_ ? -1 : 1;
  139.             _loc1_.clearSelected();
  140.             var _loc2_ = _loc1_.lastSelected;
  141.             while(_loc2_ != _loc3_)
  142.             {
  143.                _loc1_.selectItem(_loc2_,true);
  144.                if(_loc2_ >= _loc1_.topDisplayed && _loc2_ < _loc1_.topDisplayed + _loc1_.numDisplayed)
  145.                {
  146.                   _loc1_.container_mc["fListItem" + (_loc2_ - _loc1_.topDisplayed) + "_mc"].drawItem(_loc1_.getItemAt(_loc2_),_loc1_.isSelected(_loc2_));
  147.                }
  148.                _loc2_ += incr;
  149.             }
  150.             _loc1_.selectItem(_loc3_,true);
  151.             _loc1_.container_mc["fListItem" + (_loc3_ - _loc1_.topDisplayed) + "_mc"].drawItem(_loc1_.getItemAt(_loc3_),_loc1_.isSelected(_loc3_));
  152.          }
  153.          else if(key.isDown(17))
  154.          {
  155.             var selectedFlag = _loc1_.isSelected(_loc3_);
  156.             if(!_loc1_.selectMultiple)
  157.             {
  158.                _loc1_.clearSelected();
  159.             }
  160.             if(!(!_loc1_.selectMultiple && selectedFlag))
  161.             {
  162.                _loc1_.selectItem(_loc3_,!selectedFlag);
  163.                _loc1_.container_mc["fListItem" + itemNum + "_mc"].drawItem(_loc1_.getItemAt(_loc1_.topDisplayed + itemNum),_loc1_.isSelected(_loc1_.topDisplayed + itemNum));
  164.             }
  165.             _loc1_.lastSelected = _loc3_;
  166.          }
  167.       }
  168.    }
  169.    else
  170.    {
  171.       _loc1_.clickFilter = true;
  172.    }
  173. };
  174. FListBoxClass.prototype.moveSelBy = function(itemNum)
  175. {
  176.    super.moveSelBy(itemNum);
  177.    this.releaseHandler();
  178. };
  179.